package com.ruoyi.Material;

import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.system.domain.MaterialCutting.SortingModule;
import com.ruoyi.system.domain.vo.LaserUpdateData;
import com.ruoyi.system.domain.vo.SelectBySortingModule;
import com.ruoyi.system.domain.vo.SortingUpdateData;
import com.ruoyi.system.mapper.SortingModuleMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
@RequestMapping("/SortingModule")
public class SortingModuleController extends BaseController {
    @Autowired
    private SortingModuleMapper sortingModuleMapper;

    /**
     * 查询分拣数据
     * @param selectBySortingModule
     * @return
     */
        @PostMapping("/selectSortingModuleData")
    public TableDataInfo selectSortingModuleData(@RequestBody SelectBySortingModule selectBySortingModule){
        startPage();
        List<SortingModule> selectBySortingModules = sortingModuleMapper.selectSortingModuleData(selectBySortingModule);
        return getDataTable(selectBySortingModules);
    }

    /**
     * 分拣确认是否完成(单独确认)
     * @param sortingUpdateData
     * @return
     */
    @PostMapping("/UpdateData")
    public R updateData(@RequestBody SortingUpdateData sortingUpdateData){
        if (sortingUpdateData == null){
            return R.fail("确认失败，请联系管理员处理");
        }
        int data = sortingModuleMapper.updateDataById(sortingUpdateData);
        if (data < 1){
            return R.fail("确认失败，请联系管理员处理");
        }
        return R.ok();
    }

    /**
     * 分拣确认是否完成(批量确认)
     * @param sortingUpdateData
     * @return
     */
    @PostMapping("/batchUpdate")
    public R batchUpdateData(@RequestBody List<SortingUpdateData> sortingUpdateData){
            int data = sortingModuleMapper.batchUpdate(sortingUpdateData);
        if (data < 1){
            return R.fail("确认失败，请联系管理员处理");
        }
        return R.ok();
    }

}
